package com.lqk.springbootminio.service;

import org.springframework.web.multipart.MultipartFile;

/**
 * @author liqiankun@nnuo.com
 * @date 2023/3/24 15:05
 * @description
 **/
public interface OssService {

    /**
     * 上传文件
     * @param file 文件
     * @return 上传结果
     */
    String upload(MultipartFile file);

    /**
     * 删除文件
     * @param fileName 文件名
     */
    void removeFile(String fileName);

    /**
     * 获取文件信息
     *
     * @param fileName 文件名
     * @return 文件信息
     */
    String getFileStatusInfo(String fileName);

    /**
     * 获取文件外链
     *
     * @param fileName 文件名
     * @return 文件外链
     */
    String getPresignedObjectUrl(String fileName);

    /**
     * 文件下载
     *
     * @param fileName 文件名
     */
    void download(String fileName);
}
